/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package estates.addon;

import estates.model.Estate;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;
 
/**
 *
 * @author gacek
 */
public class EstateRadixSort {
          static  List[] kolejkaZliczanych;
      static  int ilosc_kubkow = 0;


    public static void EstateRadixSort(ArrayList<Estate> l) {// kod do modyfikacji!!!-prosze wykorzystac polimorfizm

        ilosc_kubkow = 0;
        Vector<Integer> ilosci = new Vector();
        ilosci.add(2);
        ilosci.add(200);
        ilosci.add(400);
        ilosci.add(60);
        ilosci.add(50);
        ilosci.add(500);


        for(int j=0;j<ilosci.size();j++){
            //po konkretnym atrybucie
            ilosc_kubkow=ilosci.get(j);
            kolejkaZliczanych = new LinkedList[ilosc_kubkow];
            for (int i = 0; i < ilosc_kubkow; i++) {
                kolejkaZliczanych[i] = new LinkedList();
            }

            for (int i = 0; i < l.size(); i++) {
                kolejkaZliczanych[l.get(i).place(j,ilosci.get(j))].add(l.get(i));
            }
            l.clear();
            for (int i = 0; i < ilosc_kubkow; i++) {
                l.addAll(kolejkaZliczanych[i]);
            }

        }
    }
}
